package com.joker.aigc.chat.domain.dto;


import com.joker.aigc.chat.domain.enums.MessageTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import jakarta.validation.constraints.NotNull;


/**
 * 聊天信息点播
 * Description: 消息发送请求体
 * Author: <a href="https://github.com/zongzibinbin">abin</a>
 * Date: 2023-03-23
 *
 * @author zhaoyuhang
 * @date 2023/06/30
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class MessageDto {

    @NotNull
    @Schema(description = "房间id")
    private Long roomId;

    /**
     * {@link MessageTypeEnum}
     */
    @Schema(description = "消息类型,根据消息类型。转换消息 " +
            "1表示正常消息，2表示撤销消息 3表示图片信息 4表示文件 5 表示语音消息" +
            "6 表示视频 7表示表情包 8 表示系统消息")
    @NotNull
    private Integer msgType;

    /**
     *
     */
    @Schema(description = "消息内容，类型不同传值不同")
    @NotNull
    private Object body;

}
